﻿Public Class Form1

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles BtnCrear.Click

        Me.LabelAdvertencia.Text = ""


        If (EstaVaciosLosCampos()) Then
            Me.LabelAdvertencia.Text = "Campos vacios"
            Return
        End If


        If (Not edadEsUnNumero()) Then
            Me.LabelAdvertencia.Text = "la edad debe ser numerica"
            Return
        End If

        Dim persona As Persona
        persona = CrearPersona()
        LlenarCamposConPersaona(persona)
        Me.LabelAdvertencia.Text = "Se guardo persona ok"



    End Sub

    Private Function EstaVaciosLosCampos() As Boolean

        Dim nombre, apellido, edad As String
        nombre = Me.TxtNombreIn.Text
        apellido = Me.TxtApellidoIn.Text
        edad = Me.TxtEdadIn.Text


        If (String.IsNullOrEmpty(apellido)) Then
            Return True
        End If

        If (String.IsNullOrEmpty(nombre)) Then
            Return True
        End If

        If (String.IsNullOrEmpty(edad)) Then
            Return True
        End If

        Return False

    End Function


    Private Function EdadEsUnNumero() As Boolean

        Dim edad As Integer
        Dim respuestaADevolver As Boolean = False

        Try
            edad = Me.TxtEdadIn.Text
            respuestaADevolver = True
        Catch ex As Exception
            respuestaADevolver = False
        End Try

        Return respuestaADevolver

    End Function


    Private Function CrearPersona() As Persona

        Dim persona As New Persona()

        persona.Nombre = Me.TxtApellidoIn.Text
        persona.Apellido = Me.TxtApellidoIn.Text
        persona.Edad = Me.TxtEdadIn.Text

        Return persona

    End Function

    Private Sub LlenarCamposConPersaona(persona As Persona)

        Me.TxtNombreOut.Text = persona.Nombre
        Me.TxtApellidoOut.Text = persona.Apellido
        Me.TxtEdadOut.Text = Convert.ToInt32(Me.TxtEdadIn.Text)

    End Sub

End Class
